﻿/*********************************************************************
 * @file       week_block.cpp
 * @brief      每一周的小组件框类
 * @details    基于ui文件运行
 * @author     南樟(a2169272059@163.com)
 * @date       2025-2-10
 * @version    1.0.0
 * @copyright  a2169272059@163.com
 *********************************************************************/
#include "week_block.h"
#include "ui_week_block.h"
#include <QVBoxLayout>
/**
 * @brief week_block::resizeEvent 当该框大小改变时，调整框中组件的宽度
 * @param event 框大小改变的事件
 */
void week_block::resizeEvent(QResizeEvent *event) {
    // 调用基类的 resizeEvent 方法
    QWidget::resizeEvent(event);
    // 动态调整其中的组件宽度
    for(auto tmp:widgetList){
        tmp->setGeometry(0,tmp->y(),this->width(),tmp->height());
    }
}
/**
 * @brief week_block::week_block 每一周的小组件框构造函数
 * @param parent 父节点
 */
week_block::week_block(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::week_block)
{
    ui->setupUi(this);
    setAttribute(Qt::WA_StyledBackground, true);
}
/**
 * @brief week_block::~week_block 每一周的小组件框析构函数
 */
week_block::~week_block()
{
    delete ui;
}
/**
 * @brief week_block::addWidget 向框内添加组件的逻辑
 * @param widget_ 要添加的组件
 * @param y_ 该组件的起始位置高度
 */
void week_block::addWidget(QWidget *widget_,int y_)
{
    widgetList.push_back(widget_);
    widget_->setGeometry(0,y_,this->width(),widget_->height());
}
